// header file for the Sport class
#ifndef __SPORT__
#define __SPORT__

class List; // there is a class 'List'

class Sport : public Text_element {
private:
    List* divisionLlist; // textsorted list contains the divisions of this sport
    enum PointMode pointmode; // this is currently contained in 'Enumhead.hpp'
    
    friend void readResults(ifstream* in);
    friend void writeToFile(Sport* psport); // these two need access
    friend bool Sports::addDivision(); // to the division list
    friend void displaytp();
    friend void changepl();
    friend void Sports::printWriteSchedule();
    friend void readFromFile();
    friend bool Sports::deleteDiv();
    friend void printWriteMatchResults();
    
public:
    Sport(); // default constructor // should not be used
    Sport(char* name); // constructor
    // sends 'name' to correct 'Text_element' constructor
    Sport(ifstream* in, char* name); // read new sport from file-stream
    void display(); // inherited from 'Text_element'
    
    char* getName(); // return 'text'
    void writeToFile(ofstream* out);
    void printWriteTable(ostream* out, char* divisionname); // print/write table to screen/file
};
#endif
